1. Field of the Invention
The present invention relates to a driving apparatus for a liquid crystal display utilizing an addressing technique effective to permit a fast responding STN (Super Twisted Nematic) passive matrix liquid crystal display to provide images of high contrast.
2. Description of the Prior Art
The liquid crystal display is currently used as one type of flat panel display, and an exemplary type of which is an STN passive matrix liquid crystal display (hereinafter referred to as "STN LCD") as shown in FIG. 22. This STN LCD is of a simple structure including a glass substrate unit 223 having first and second halves 223A and 223B opposed to each other. The first half substrate 223A is provided with a first electrodes 221 comprised of a plurality of transparent and striped-shaped electrodes 221 formed on one surface thereof to extend in a first direction. Similarly, the second half substrate 223B is provided with a plurality of transparent and striped-shaped second electrodes 222 extending in a second direction on the surface opposed to the first electrodes 221.
These glass substrate halves 223A and 223B are assembled such that the first electrodes 221 extend in a traverse direction perpendicular to the second direction to thereby form a matrix of row and column electrodes together with the second electrodes 222. Hereinafter, the first and second electrodes 221 and 222 are referred to as "row electrodes" and "column electrodes", respectively. A layer 224 of liquid crystal material tightly sandwiched between the first and second glass substrate halves 223A and 223B. Due to this peculiar structure, the STN LCD has an advantage in that it is inexpensive to make. With the advent of an STN LCD having a fast responding characteristics and capable of displaying time-varying image of a video-rate, various fields in which the STN LCD may be applied are now expanding.
However, it has been found that the fast responding STN passive matrix type LCD is susceptible to a considerable reduction in image contrast if it is driven by the use of the conventional driving technique in which a select voltage is applied at a time to one of the row electrodes 221 during one frame period while information to be applied to pixels aligned with such one of the row electrodes 221 is supplied through the column electrodes 222. To avoid this considerable reduction in image contrast, a new driving technique called as an active driving method has been suggested to improve the image contrast exhibited by the STN passive matrix LCD by selecting the plural row electrodes 221 simultaneously at a time and selecting a number of times one of the row electrodes during one frame period.
With reference to FIG. 23, the detail of this active driving method is described below. First, row signal supplied to the row electrodes 221 is described. An orthogonal matrix 231 consists of a data of binary digits of "+1" and "-1" or a data of three binary digits of "+1", "0", and "-1", in which the inner product of arbitrarily chosen two different ones of the column vector forming parts of the matrix necessarily be zero. Of the data having this matrix, the voltage corresponding to these binary digits "+1" and "-1" is the select voltage for the row electrodes 221. In other words, the same number of row electrodes 221 as the total number of binary digits "+1" and "-1" included in one row vector of the orthogonal matrix 231 are selected simultaneously.
Next, column signal supplied to the column electrodes 222 is described. With respect to a digital image data for each frame to be displayed by the LCD, a product of digital image data 232 times the orthogonal matrix 231 to be used for driving the column electrodes 222 is determined and is then converted into a converted data 233. A voltage proportional to the value of each element of converted data 233 is applied as a column signal to the column electrodes 222.
When the row and column signals are applied to the row and column electrodes 221 and 222, respectively, and effective voltage proportional to each element of the image data 232 is accumulated in each of pixels, whereat the row and column electrodes 221 and 223 intersect, during one frame period. Since respective portions of the liquid crystal layer 224 (FIG. 22) aligned with the pixels permit passage of light therethrough in dependence on the effective voltage between the row and column electrodes 221 and 222, an image can be displayed on the LCD.
This active driving method is disclosed in a paper titled as "Optimum Row Function and Algorithms for Active Addressing" by B. Clifton, D. Prince, B. Leybold, T. J. Scheffer, A. R. Conner,.and B. Greenberg, 1993 SID Digest of Technical Papers, 89-92 (1993). According to this paper, it is described that good contrast and uniformity of image is possible with fewer lines selected at a time, even when compared with the image obtained when all lines are selected at a time. Such a fewer number of lines, reduced from the full number of lines, can be obtained by including the binary digit "0" in the orthogonal matrix 231 comprising the binary digits "+1" and "-1"
Furthermore, among the orthogonal matrixes comprising three binary digits, with the matrix Z' expresses by the following equation (2), the image displayed by LCD is better than that with the matrix Z expressed by the following equation (1). ##EQU1##
The matrix Z of the equation (1) can be obtained by expanding an orthogonal matrix X below expressed by an equation (3) comprised of the binary digits "+1" and "-1" and a unit matrix Y expressed by an equation (4) with the manner expressed by an equation (5) below. The matrix Z' of the equation (2) is obtained by replacing the i-th line of matrix Z with the i'-th line using the i and i' determined based on an equation (6). ##EQU2## wherein X is a square matrix of "n" order, Y is a square Matrix of "m" order, and Z is a square matrix of "mn" order. When all the elements in the square matrix are zero, Z becomes zero. EQU (i-1)/n+r . . . s (6)
and EQU i'=s.times.m+r+1 (7),
wherein "i" and "i'"are natural numbers smaller than "N", "r" is an integer greater than zero but less than "m", and "s" is an integer greater than zero but less than "n". Based on the facts described above, since an orthogonal matrix such as the matrix Z' expressed by the equation (2) is utilized as a row pattern for the row signal of the LCD in the conventional driving apparatus, the same matrix is utilized as the orthogonal matrix to calculate the converted data for driving LCD.
However, utilizing an orthogonal matrix such as the matrix Z enables to calculate the converted data more easier with a calculator constructed in more compact size than utilizing other orthogonal matrix such as the matrix Z'. The converted data can be calculated at the following steps. First, the image data 232 is separated into some portions comprised of elements of plural rows, as shown in FIG. 5. Second, these separated portions are applied with the orthogonal matrix X that is a source of the matrix Z' to convert the elements therein. Third, thus converted elements are combined, and then the aimed converted image 233 can be obtained.
According to the active driving method suggested in the above paper, the LCD can be driven with a good image contrast even reducing the number of lines to be selected at a time with respect to the matrix Z. However, in this case, a calculator in a great scale is necessary for calculating such a complicated process to calculate the aimed image data 233 based on the matrix Z', resulting in the increasing of cost and difficulties of operations. Note that such a great scale of calculator can be replaced with a simpler one, if the matrix Z is used in place of the matrix Z' at the sacrifice of the image contrast.
Further problems with respect to the active driving method other than that suggested in the above paper are available. It is the construction of image buffer storage for temporarily storing the image data 232 and the converted data 233. The computation is carried out to the column vectors of the image data 232 to determine the converted data 233. To describe it with reference to the matrix of the image data 232 shown in FIG. 23, the sequence of reading of each of the image data 232 will be as follows. EQU a.sub.1,1 .fwdarw.a.sub.2,1 .fwdarw.a.sub.3,1 .fwdarw.a.sub.4,1 .fwdarw.a.sub.1,2 .fwdarw.a.sub.2,2 .fwdarw. . . . .fwdarw.a.sub.4,4
On the other hand, the sequence of writing the image data 232 will be as follows. EQU a.sub.1,1 .fwdarw.a.sub.1,2 .fwdarw.a.sub.1,3 .fwdarw.a.sub.1,4 .fwdarw.a.sub.2,1 .fwdarw.a.sub.2,2 .fwdarw. . . . .fwdarw.a.sub.4,4
In other words, the direction of image data reading and the direction of image writing are such as shown in FIGS. 24A and 24B, respectively. In this case, the image data is read out in the direction Dr indicated by arrows in FIG. 24B, and is written in the direction Dw indicated by arrows in FIG. 24A. Since these directions Dr and Dw are different from each other, buffer memory capable of high speed access to the image data 232 with respect to the directions Dr and Dw are required. However, the dynamic random access memory (DRAM) widely used for data storage use can make a high speed access to the data to write in any of these directions Dw and Dr, but can not make a high speed access to read in the direction other than that writing direction. Therefore, DRAM can not be applied for the apparatus for driving LCD, and an expensive memory such as SRAM (static random access memory) which can make a very high speed access both in reading and writing is required.
Furthermore, even when such an expensive and high speed access memory is used as a means of buffer storage for the image data 232, the reading direction Dr and writing direction from Dw are different each other, as described in the above. Therefore, two sets of buffer storage capable of high speed access for temporarily storing the image data 232 and for reading the image data 232, respectively, are necessary. One of buffer storage is only for writing the image data 232 in the direction Dw, and the other is only for reading the image data 232 therefrom in the direction Dr. These two sets of buffer storage are alternately operated for each frame period to receive the image data 232 for each row and to output for each column the image data 232 of the previous frame period, respectively.
On the other hand, while each element of the converted data represents an inner product between the column vector of the image data 232 and the row vector of the orthogonal matrix 231, the row vectors of the orthogonal matrix 231 for each column vector of one of the image data 232 are computed in the sequence from the first row to the last row of the orthogonal matrix and, therefore, the column vectors of the converted image data 233 are prepared in the following sequence. EQU b.sub.1,1 .fwdarw.b.sub.2,1 .fwdarw.b.sub.3,1 .fwdarw.b.sub.4,1 .fwdarw.b.sub.1,2 .fwdarw.b.sub.2,2 .fwdarw. . . . b.sub.4,4
The converted data 233 so prepared are supplied in units of a single row to the column driver 9, as shown in FIG. 23. Therefore, the sequence of reading is as follows. EQU b.sub.1,1 .fwdarw.b.sub.2,1 .fwdarw.b.sub.1,3 .fwdarw.b.sub.1,4 .fwdarw.b.sub.2,1 .fwdarw.b.sub.2,2 .fwdarw. . . . b.sub.4,4
Accordingly, even in the case of the converted data, each of the image data buffers must have a capacity corresponding to twice the size of the data as is the case with the image data 232.
In FIG. 29, an example of conventional driving apparatus utilizing the active driving method for the LCD is shown. The driving apparatus includes an image data buffer storage 291 for receiving and temporarily storing the image data Sv, a data convertor 600, a converted data buffer storage 295, a matrix generator 700, an LCD driver 800, and an STN-LCD 14. Note that the image data Sv corresponds to the image data 232 as described above with reference to FIG. 23, and is a matrix A of (N, M)-type in generally speaking.
The image data buffer storage 291 has two frame memories 219A and 291B each for receiving one frame of the image data Sv, and a frame selector 291 for selecting first and second frame memories 291A and 291B. The frame memory selector 291C alternately selects two frame memories 291A and 291B for each frame period to receive the image data 232 (Sv) for each row in the direction Dw, and to output for each column of the image data 232 in the direction Dr of the previous frame period, respectively, to the data convertor 600.
The data converter 600 has a column register 293 and a calculator 294. The column register 293 receives one column data of the matrix A (image data Sv) which are "N" number of data representing column vectors of the matrix A, and latches all these data.
The matrix generator 700 has an address generator 292 for generating an address data and a ROM 296. The ROM 296 stores the data representing the orthogonal matrix Z' of (N, N)-type previously. The equation (2) shows one example of the orthogonal matrix Z' when "N" is twelve. According to the address data from the address generator 292, the ROM outputs "N" number of data for one row. In other words, ROM 296 outputs the orthogonal matrix Z' to the calculator 294 and the LCD driver 800.
The calculator 294 of the data convertor 600 calculates the inner product of the row vectors generated by the ROM 296 and the column vectors latched by the column register 293. The inner products are calculated with respect to combinations of all row vectors of the matrix Z' and all column vectors of the matrix A. As a result, a multiplication of the matrix as expressed by the following equation (8) is performed. ##EQU3## wherein "b.sub.ij " is a data corresponding to an element on the "i"-th row and "j"-th column of the matrix B, "h.sub.ik " is a data corresponding to an element on the i-th row and the k-th column of the matrix Z'. "a.sub.kj " is a data corresponding to an element on the k-th row and the j-th column of the matrix A. Thus obtained converted data of matrix B is output to the converted data buffer storage 295.
The converted data buffer storage 295 has two frame memories 295A and 295B each for receiving, and frame selector 295C which are constructed in a manner similar to those of the image data buffer storage 291. The frame selector 295C alternately selects two frame memories 295A and 295B for each frame period to receive the converted data 233 for each column in the direction Dw, and to output for each row the converted data 231 in the direction Dr of the previous frame period, respectively, to the LCD driver 800.
The LCD driver 800 has a digital-to-analog (D/A) converter 8, a column driver 9, a row voltage register 12, and row driver 13. The D/A converter 9 converts the converted data 234 received from the buffer storage 295 into an analog signal. The column driver 9 applies voltages corresponding to thus converted analog signal to "M" number of column electrodes 222 of the LCD 14.
On the other hand, the row voltage register 12 latches "N" number of row vectors of the orthogonal matrix Z' output from the ROM 296, and then the row driver 13 applies voltages corresponding to the "N" number of data stored in the register 12 to "N" number of row electrodes 221 of the LCD 14. Note that both the row and column drivers 13 and 9 apply the voltage according to the data of "i"-th element of matrixes Z' and B, respectively, to the corresponding electrodes 221 and 222 at a time "i" ("i" is a natural number smaller than "N").